1
Il percorso verso un'astrazione robusta
AI034Lesson 10
00:00

Una vera padronanza di Rust inizia con il DRY (Non ripeterti) principio. Prima di ricorrere alla sintassi generica, dobbiamo percorrere il cammino dell' Astrazione Concreta. Immagina un'app per il commercio che confronta prezzi (i32) e temperature dei sensori (f32); copiare e incollare la logica di confronto crea debito tecnico dove gli errori prosperano nell'ombra della duplicazione.

1. Il flusso di lavoro per il refactoring

Per passare dalla duplicazione all'eleganza, segui il processo a tre fasi: Identifica la logica ripetuta, Estrai questa logica in un corpo di funzione con input/output chiari, e Aggiorna i punti di chiamata originali per utilizzare la nuova funzione.

fn largest_i32()fn largest_char()fn largest(list: &[i32])Refactoring

2. I limiti della logica concreta

Mentre Listato 10-3 astrae correttamente la logica, ma rimane vincolato a Tipi di dati concreti. Risolve la duplicazione della logica ma ci rende vulnerabili a Duplicazione dei tipi. Questo limite è la spinta verso Tipi astratti ($$), dove la logica è finalmente liberata dai layout di memoria specifici.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>